]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
overview: Move ::scroll-event signal handling (again)
authorFlorian Müllner <fmuellner@gnome.org>
Sat, 2 Jul 2016 09:16:22 +0000 (11:16 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Tue, 5 Jul 2016 15:47:44 +0000 (17:47 +0200)
Commit c39ffa111 moved the signal handling from the controls- to the
background-group to enable scrolling on non-primary monitors.
However this broke scrolling on reactive overview elements as the
workspace switcher, as they're not descendants of the background.
To fix, move scroll-event handling to the overview group itself,
which is the common ancestor of all overview elements.

https://bugzilla.gnome.org/show_bug.cgi?id=768316

js/ui/layout.js
js/ui/overview.js

index 9d481cf0b18aafc27f8c07a966ca5be8e9523280..aaf9da53678915609ed04e35127be60dbbfb9871 100644 (file)
@@ -220,7 +220,8 @@ const LayoutManager = new Lang.Class({
         global.stage.add_child(this.uiGroup);
 
         this.overviewGroup = new St.Widget({ name: 'overviewGroup',
-                                             visible: false });
+                                             visible: false,
+                                             reactive: true });
         this.addChrome(this.overviewGroup);
 
         this.screenShieldGroup = new St.Widget({ name: 'screenShieldGroup',
index ea6b3ec98f33a9a66725c324a18a35635552932c..1af870632e687cbc2f411412c6e243b6cb8aa02f 100644 (file)
@@ -124,9 +124,6 @@ const Overview = new Lang.Class({
         Main.layoutManager.overviewGroup.add_child(this._backgroundGroup);
         this._bgManagers = [];
 
-        this._backgroundGroup.connect('scroll-event',
-                                      Lang.bind(this, this._onScrollEvent));
-
         this._desktopFade = new St.Widget();
         Main.layoutManager.overviewGroup.add_child(this._desktopFade);
 
@@ -155,6 +152,9 @@ const Overview = new Lang.Class({
             dragMotion: Lang.bind(this, this._onDragMotion)
         };
 
+
+        Main.layoutManager.overviewGroup.connect('scroll-event',
+                                                 Lang.bind(this, this._onScrollEvent));
         Main.xdndHandler.connect('drag-begin', Lang.bind(this, this._onDragBegin));
         Main.xdndHandler.connect('drag-end', Lang.bind(this, this._onDragEnd));